﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Windows.Forms;

namespace GIFT
{
    class ConsultaForm
    {
        //Constructor de la clase
        public ConsultaForm()
        {
            this.sqlConnection1 = new System.Data.SqlClient.SqlConnection();
            this.sqlConnection1.ConnectionString = Servidor;
            this.sqlConnection1.FireInfoMessageEventOnUserErrors = false;
        }

        //Realiza una consulta a la base de datos, recibe la sentencia con la consulta
        public SqlDataReader HacerConsulta1(string sentenciaSQL)
        {
            SqlDataReader datos = null;
            SqlCommand comando;
            sqlConnection1.Open();
            try
            {
                comando = new SqlCommand(sentenciaSQL, sqlConnection1);
                datos = comando.ExecuteReader();
            }
            catch (SqlException e)
            {
                string mensajeError = e.ToString();
                MessageBox.Show(mensajeError);
            }
            return datos;
        }

        public void HacerConsulta2(SqlCommand comando)
        {
            sqlConnection1.Open();

            try
            {
                comando.ExecuteNonQuery();
            }
            catch (SqlException ex)
            {
                string mensaje = ex.ToString();
                MessageBox.Show(mensaje);
            }
            sqlConnection1.Close();
        }

        public object HacerConsulta3(SqlCommand comando)
        {
            sqlConnection1.Open();
            object theImg = comando.ExecuteScalar();
            try
            {
                if (theImg != null)
                {
                    return theImg;
                }
            }
            catch { return null; }
            finally
            {
                sqlConnection1.Close();
            }
            return null;
        }

        //Cierra la conexion a la base de datos
        public void CierraConexion()
        {
            sqlConnection1.Close();
        }

        public SqlConnection getConexion()
        {
            return sqlConnection1;
        }

        //Variables globales

        //Conexion con la base de datos
        private System.Data.SqlClient.SqlConnection sqlConnection1;
        //Nombre del servidor
        const string Servidor = "Data Source=PAPA_LAPTOP\\SQLEXPRESS;Initial Catalog=GIFT;Integrated Security=True";
        //const string Servidor = "Data Source=FERNANDOARAYA;Initial Catalog=GIFT;Integrated Security=True";
        //const string Servidor = "Data Source=EVC\\SQLEXPRESS;Initial Catalog=GIFT;Integrated Security=True";
        //const string Servidor = "Data Source=USER\\JORGE;Initial Catalog=GIFT;Integrated Security=True";
    }
}
